Video conversion technology

ABSTRACT

Video conversion technology, in which a first stream of video content is accessed and multiple, different layers are extracted from the first stream of the video content. Each of the multiple, different layers are separately processed to convert the multiple, different layers into modified layers that each have a higher resolution. The modified layers are reassembled into a second stream of the video content that has a higher resolution than the first stream of the video content.

FIELD

This disclosure relates to video conversion technology.

BACKGROUND

From the 1980s to late 1990s, television production used multiple videocamera technologies in order to minimize production budgets. This methodof production, known as the NTSC (or National Television SystemCommittee) format, allowed for lower budgeted programming recorded ineither single camera or multicam camera setups. The cameraspecifications had limitations, especially from a long term archivestandpoint.

These systems were based on a R, G, B colorimetry platform (Red, Green,Blue) with a 29.97 frame rate and 525 lines of resolution. Incomparison, Modern High Definition techniques have 1080 lines ofresolution and run at a speed of 23.98.

To convert NTSC video into Modern High Definition (HD), an“upconversion” process has been used. The “upconversion” processacquires an NTSC signal and simply “upconverts” or “blow ups” the image.This process addressed the dimensions and speed, but not the aliasingand increase of noise in the image. The “upconversion” was popularizedin the 1990s when HD was first being sold.

SUMMARY

In one aspect, a method includes accessing a first stream of videocontent, the first stream of the video content having a firstresolution. The method also includes extracting, from the first streamof the video content, multiple, different layers that each have thefirst resolution and separately processing each of the multiple,different layers to convert the multiple, different layers into modifiedlayers that each have a second resolution that is higher than the firstresolution. The method further includes reassembling, by at least oneprocessor, the modified layers into a second stream of the video contentstoring, in electronic storage, the second stream of the video content.The second stream of the video content has the second resolution that ishigher than the first resolution.

Implementations may include one or more of the following features. Forexample, the method may include extracting, from the first stream of thevideo content, multiple, different color layers that each correspond toa different color, separately processing each of the multiple, differentcolor layers to convert the multiple, different color layers intomodified color layers that each correspond to a different color, andreassembling the modified color layers into a second stream of the videocontent.

In some implementations, the method may include extracting, from thefirst stream of the video content, a first layer, extracting, from thefirst stream of the video content, a second layer that is different thanthe first layer, and extracting, from the first stream of the videocontent, a third layer that is different than the first layer and thesecond layer. In these implementations, the method may includeprocessing the first layer to convert the first layer into a modifiedfirst layer, processing the second layer to convert the second layerinto a modified second layer that is different than the modified firstlayer, processing the third layer to convert the third layer into amodified third layer that is different than the modified first layer andthe modified second layer, and reassembling the modified first layer,the modified second layer, and the modified third layer into a secondstream of the video content.

The method may include extracting, from the first stream of the videocontent, first images of a scene, extracting, from the first stream ofthe video content, second images of the scene, and extracting, from thefirst stream of the video content, third images of the scene. The secondimages of the scene may be a different representation of the scene thanthe first images of the scene and the third images of the scene may be adifferent representation of the scene than the first images of the sceneand the second images of the scene. The method also may includeprocessing the first images of the scene to convert the first images ofthe scene into modified first images of the scene that have a higherresolution than the first images of the scene, processing the secondimages of the scene to convert the second images of the scene intomodified second images of the scene that have a higher resolution thanthe second images of the scene, and processing the third images of thescene to convert the third images of the scene into modified thirdimages of the scene that have a higher resolution than the third imagesof the scene. The method further may include reassembling the modifiedfirst images of the scene, the modified second images of the scene, andthe modified third images of the scene into a second stream of the videocontent.

In some examples, the method may include extracting, from the firststream of the video content, a first color layer, extracting, from thefirst stream of the video content, a second color layer that isdifferent than the first color layer, and extracting, from the firststream of the video content, a third color layer that is different thanthe first color layer and the second color layer. In these examples, themethod may include processing the first color layer to convert the firstcolor layer into a modified first color layer, processing the secondcolor layer to convert the second color layer into a modified secondcolor layer that is different than the modified first color layer, andprocessing the third color layer to convert the third color layer into amodified third color layer that is different than the modified firstcolor layer and the modified second color layer. Further, in theseexamples, the method may include reassembling the modified first colorlayer, the modified second color layer, and the modified third colorlayer into the second stream of the video content.

In some implementations, the method may include extracting, from thefirst stream of the video content, a red color layer, extracting, fromthe first stream of the video content, a green color layer that isdifferent than the red color layer, and extracting, from the firststream of the video content, a blue color layer that is different thanthe red color layer and the green color layer. In these implementations,the method may include processing the red color layer to convert the redcolor layer into a modified red color layer, processing the green colorlayer to convert the green color layer into a modified green color layerthat is different than the modified red color layer, and processing theblue color layer to convert the blue color layer into a modified bluecolor layer that is different than the modified red color layer and themodified green color layer. In addition, in these implementations, themethod may include reassembling the modified red color layer, themodified green color layer, and the modified blue color layer into thesecond stream of the video content.

Also, the method may include identifying red color values in the firststream of the video content and separating the identified red colorvalues into the red color layer. The method may include identifyinggreen color values in the first stream of the video content andseparating the identified green color values into the green color layer.The method may include identifying blue color values in the first streamof the video content and separating the identified blue color valuesinto the blue color layer.

In some examples, the method may include extracting, from the firststream of the video content, first images of a scene that reflect redcolor values of the scene, extracting, from the first stream of thevideo content, second images of the scene that reflect green colorvalues of the scene, and extracting, from the first stream of the videocontent, third images of the scene that reflect blue color values of thescene. In these examples, the method may include processing the firstimages of the scene to convert the first images of the scene intomodified first images of the scene that reflect red color values of thescene at a higher resolution than the first images of the scene,processing the second images of the scene to convert the second imagesof the scene into modified second images of the scene that reflect greencolor values of the scene at a higher resolution than the second imagesof the scene, and processing the third images of the scene to convertthe third images of the scene into modified third images of the scenethat reflect blue color values of the scene at a higher resolution thanthe third images of the scene. Further, in these examples, the methodmay include reassembling the modified first images of the scene, themodified second images of the scene, and the modified third images ofthe scene into the second stream of the video content.

The method may include separately performing a blurring process on eachof the multiple, different layers and, after performing the blurringprocess on each of the multiple, different layers, converting themultiple, different layers into modified layers that each have thesecond resolution that is higher than the first resolution. The methodalso may include separately performing a sharpening process on each ofthe multiple, different layers and, after performing the sharpeningprocess on each of the multiple, different layers, converting themultiple, different layers into modified layers that each have thesecond resolution that is higher than the first resolution. The methodfurther may include separately performing a chromatic adjustment processon each of the multiple, different layers and, after performing thechromatic adjustment process on each of the multiple, different layers,converting the multiple, different layers into modified layers that eachhave the second resolution that is higher than the first resolution.

In addition, the method may include separately performing a de-interlaceprocess on each of the multiple, different layers and, after performingthe de-interlace process on each of the multiple, different layers,converting the multiple, different layers into modified layers that eachhave the second resolution that is higher than the first resolution. Themethod may include separately converting each of the multiple, differentlayers into modified layers that each have the second resolution that ishigher than the first resolution and, after converting each of themultiple, different layers, changing a speed of each of the modifiedlayers.

In some implementations, the method may include extracting, from thefirst stream of the video content, multiple, different color layers thateach correspond to a different color and separately processing each ofthe multiple, different color layers to convert the multiple, differentcolor layers into modified color layers that each correspond to adifferent color. In these implementations, the method may includereassembling the modified color layers into a second stream of the videocontent by performing a chromatic level adjustment process that weights,in the second stream of the video content, a first color layer includedin the modified color layers more heavily than a second, different colorlayer included in the modified color layers.

In addition, the method may include identifying features that arepresent in each of the modified layers and using the identified featuresto align the modified layers in the second stream of the video content.The method may include accessing a first video signal in NTSC (NationalTelevision System Committee) format and reassembling the modified layersinto a second video signal in a high definition format that has a higherresolution than the first video signal in the NTSC format. The methodalso may include accessing a standard definition television videoprogram and reassembling the modified layers into a modified highdefinition television video program.

In some examples, the method may include accessing a first stream ofvideo content with a 29.97 frame rate and 525 lines of resolution, thefirst stream of video content being based on a red, green, and bluecolorimetry platform. In these examples, the method may includeextracting, from the first stream of the video content, red, green, andblue layers that each have a 29.97 frame rate and 525 lines ofresolution and separately processing each of the red, green, and bluelayers to convert the red, green, and blue layers into modified red,green, and blue layers that each have a 23.98 frame rate and 1080 linesof resolution. Also, in these examples, the method may includereassembling the modified red, green, and blue layers into a secondstream of the video content with a 23.98 frame rate and 1080 lines ofresolution.

In another aspect, a video conversion system includes at least oneprocessor and at least one memory coupled to the at least one processorhaving stored thereon instructions which, when executed by the at leastone processor, causes the at least one processor to perform operations.The operations include accessing a first stream of video content, thefirst stream of the video content having a first resolution. Theoperations also include extracting, from the first stream of the videocontent, multiple, different layers that each have the first resolutionand separately processing each of the multiple, different layers toconvert the multiple, different layers into modified layers that eachhave a second resolution that is higher than the first resolution. Theoperations further include reassembling the modified layers into asecond stream of the video content and storing, in electronic storage,the second stream of the video content. The second stream of the videocontent has the second resolution that is higher than the firstresolution.

In yet another aspect, at least one computer-readable storage medium isencoded with executable instructions that, when executed by at least oneprocessor, cause the at least one processor to perform operations. Theoperations include accessing a first stream of video content, the firststream of the video content having a first resolution. The operationsalso include extracting, from the first stream of the video content,multiple, different layers that each have the first resolution andseparately processing each of the multiple, different layers to convertthe multiple, different layers into modified layers that each have asecond resolution that is higher than the first resolution. Theoperations further include reassembling the modified layers into asecond stream of the video content and storing, in electronic storage,the second stream of the video content. The second stream of the videocontent has the second resolution that is higher than the firstresolution.

The details of one or more implementations are set forth in theaccompanying drawings and the description, below. Other potentialfeatures of the disclosure will be apparent from the description anddrawings, and from the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

FIGS. 1, 2, and 7 are diagrams of exemplary systems.

FIGS. 3 and 4 are flowcharts of exemplary processes.

FIGS. 5 and 6 are examples of converted video images.

DETAILED DESCRIPTION

Techniques are described for converting a lower resolution video signalinto a higher resolution video signal. A process divides a single NTSCsignal into three unique red, green, and blue images for cleanup andfiltering in individual layers. Once each sequence is restored, thefiles are merged back into one video stream to create a modified HDrepresentation of the NTSC signal.

FIG. 1 illustrates an exemplary system 100 for converting a lowerresolution video stream 110 into a higher resolution video stream 150.The lower resolution video stream 110 can be, for example, in the NTSCformat or can be a standard definition television video program. Thehigher resolution video stream 150 can be, for example, in HD format.

Multiple, different layers can be extracted from the lower resolutionvideo stream 110. Each of the multiple, different layers can have thesame resolution as the lower resolution video stream 110 or can beconverted into layers of different resolution. For example, a firstlayer extraction module 120A, a second layer extraction module 1208, anda third layer extraction module 120C can extract and convert first,second, and third layers, respectively.

Each of the extracted layers can be separately processed to convert arespective extracted layer into a respective modified layer. Modifiedlayers can, for example, have a same resolution as the higher resolutionvideo stream 150. For example, a first layer conversion module 130A, asecond layer conversion module 130B, and a third layer conversion module130C can convert the first, second, and third layers into first, second,and third modified layers, respectively. A reassembly module 140 canreassemble the first, second, and third modified layers into the higherresolution video stream 150.

In converting or modifying the layers, a transcoding process can be usedto convert from a first format signal to a second format signal. Forexample, in some implementations, the first format signal can be a 4:2:2standard definition digital video source which can be associated with aY′CbCr color space and the second format signal can be a 4:4:4 highdefinition digital video source that is associated with a RGB colorspace. The “4” in the “4:2:2” label represents a luminance of the firstformat signal and the “2:2” in the “4:2:2” label represents colordifference signals associated with the first format signal. Similarly,the “4:4:4” label represents the three primary colors R,G,B. Inaddition, other picture techniques may be used, which include 4:2:0. In“4:2:0,” the “0” represents a non-sampled value. This non sampled value,when transcoded, can represent an actual value based on the mathematicaldifferences between the “4:2” or luminance and first color samples.Increasing the value from a “0” value using neighboring values mayenable information to be manipulated to create a higher value or abetter overall image.

The first format signal can use a “lossy” scheme which is used to savespace in transmission or recording systems. For example, the firstformat signal can support 10,648,000 colors while the second formatsignal can support 16,777,000 colors. In some implementations, the firstformat signal is an 8-bit signal and the second format signal is a10-bit signal. In such implementations, the transcoding process cantranscode an 8-bit standard definition signal into a 10-bit highdefinition digital. The larger color space associated with the highdefinition signal can enable subsequent processes to manipulate the highdefinition signal for visual improvement, such as in frequency and timedomains, which can result in improved quality in the high definitionsignal as compared to the standard definition signal.

FIG. 2 illustrates an exemplary video conversion system 200. The system200 includes an input module 210, a data store 220, one or moreprocessors 230, one or more I/O (Input/Output) devices 240, and memory250. The input module 220 may be used to input any type of informationused in video conversion. For example, the input module 210 may be usedto receive video data or receive data describing how video data storedin the data store 220 is to be processed during conversion. In someimplementations, data from the input module 210 is stored in the datastore 220. The data included in the data store 220 may include, forexample, any type of video data (e.g., images, streams, etc.) andparameters that define how video conversion processes operate.

In some examples, the data store 220 may be a relational database thatlogically organizes data into a series of database tables. Each databasetable in the data store 220 may arrange data in a series of columns(where each column represents an attribute of the data stored in thedatabase) and rows (where each row represents attribute values). In someimplementations, the data store 220 may be an object-oriented databasethat logically or physically organizes data into a series of objects.Each object may be associated with a series of attribute values. In someexamples, the data store 220 may be a type of database management systemthat is not necessarily a relational or object-oriented database. Forexample, a series of XML (Extensible Mark-up Language) files ordocuments may be used, where each XML file or document includesattributes and attribute values. Other types of data files and/ordatabase technologies may be used. Data included in the data store 220may be identified by a unique identifier such that data related to aparticular process may be retrieved from the data store 220.

The processor 230 may be a processor suitable for the execution of acomputer program such as a general or special purpose microprocessor,and any one or more processors of any kind of digital computer. In someimplementations, the system 200 includes more than one processor 230.The processor 230 may receive instructions and data from the memory 250.The memory 250 may store instructions and data corresponding to any orall of the components of the system 200. The memory 250 may includeread-only memory, random-access memory, or both.

The I/O devices 240 are configured to provide input to and output fromthe system 200. For example, the I/O devices 240 may include a mouse, akeyboard, a stylus, or any other device that allows the input of data.The I/O devices 240 may also include a display, a printer, or any otherdevice that outputs data.

FIGS. 3 and 4 illustrate processes 300 and 400, respectively, forincreasing resolution of a video stream. The operations of the processes300 and 400 are described generally as being performed by the system200. In some implementations, operations of the process 300 and/or theprocess 400 may be performed by one or more components of the system100. Operations of the process 300 and/or the process 400 also may beperformed by one or more processors included in one or more electronicdevices.

Referring to FIG. 3, the system 200 accesses a first stream of videocontent (310). For instance, the system 200 can access a first stream ofthe video content that has a first resolution. As a more particularexample, the system 200 can access a video signal in NTSC format, whichcan have 525 lines of resolution. As another example, the system 200 canaccess a standard definition television video program.

As another example and as shown in FIG. 4, the system 200 accesses astandard definition television video program (410). The standarddefinition television video program has a frame rate of 29.97 frames persecond (FPS) and has a resolution of 720×486. The standard definitiontelevision video program can be processed with interlacing and fieldinterpolation.

The standard definition television video program is based on an RGB(Red, Green, Blue) colorimetry platform. An RGB color colorimetryplatform can use an additive color space that is based on a RGB colormodel. A particular RGB color space can be defined by three chromaticiesof red, green, and blue additive primaries, and can produce anychromaticity that can be represented as a tuple defined by percentagesor values of red, green, and blue amounts.

In some implementations, an original analog version of the standarddefinition television video program is accessed. In someimplementations, a digital version that includes information encodedfrom an original analog version is accessed. If an original analogversion is accessed, a decoding process can be performed to create adigital version, such as by using a three-dimensional comb decoder with12 bit analog to digital conversion.

The standard definition television video program can includedegradations resulting from encoding and recording processes, includinganalog recording deficiencies used during an original capture. Forexample, use of analog magnetic oxide tapes and subsequent duplicationof those tapes may have introduced analog tape noise, differential gainand phase distortions, and loss of recorded RF (Radio Frequency) energyand drop-out of signals recorded on the magnetic tape. Such degradationscan result in visual impairments embedded in the original recordings.

Referring again to FIG. 3, the system 200 extracts, from the firststream of video content, multiple, different layers (320). In someimplementations, first, second, and third layers can be extracted, wherethe second layer is different than the first layer and the third layeris different than the first layer and the second layer. For example, aset of first images of a scene can be extracted from the first stream ofvideo content into the first layer. A set of second images of the scenecan be extracted from the first stream of video content into the secondlayer, where the second images of the scene are a differentrepresentation of the scene than the first images. Similarly, a set ofthird images of the scene can be extracted from the first stream ofvideo content into the third layer, where the third images of the sceneare a different representation of the scene than the first images andthe second images.

As another example, the system 200 can extract multiple, differentlayers that each have the first resolution. For example, each of themultiple, different layers can be a color layer that corresponds to adifferent color. For example and as shown in FIG. 4, the system 200extracts from the standard definition television video program a redcolor layer (220A), a green color layer (220B), and a blue color layer(220C). The green color layer is a different layer than the red colorlayer and the blue color layer is a different layer than the green colorlayer and the blue color layer. The extraction of the red color layer,the green color layer, and the blue color layer can involve, forexample, identifying red, green, or blue color values in the standarddefinition television video program and separating the identified red,green, or blue color values into the respective red, green, or bluecolor layer. In some implementations, extracting the red, green, andblue color layers includes extracting, from the standard definitiontelevision video program, first, second, and third images of a scenethat reflect red color values, green color values, and blue color valuesof the scene, respectively.

In some implementations, the extractions of the red color layer, thegreen color layer, and the blue color layer are performed using athree-line adaptive comb filter technique. A comb filter applies amathematical combing process to a luminance signal in a fashion similarto vertical lines of a comb, and can filter color information from thestandard definition television video program. In some implementations, a3D (Three Dimensional) digital comb filter is used, which can provide agreater degree of accuracy than a non-digital filter and can reduce dotcrawl and cross color artifacts which can occur in three line combfilter results.

Referring again to FIG. 3, the system 200 separately processes each ofthe multiple, different layers to convert them into modified layershaving higher resolution (330). For instance, the system 200 can processthe first, second, and third layers to convert the first, second, andthird layers into modified first, second, and third layers,respectively, where the modified second layer is different than themodified first layer and the modified third layer is different than themodified first layer and the modified second layer. For instance, inimplementations where first, second and third images of a scene areextracted from the first stream of the video content, the system 200 canprocess the first images of the scene to convert the first images of thescene into modified first images of the scene that have a higherresolution than the first images of the scene, process the second imagesof the scene to convert the second images of the scene into modifiedsecond images of the scene that have a higher resolution than the secondimages of the scene, and process the third images of the scene toconvert the third images of the scene into modified third images of thescene that have a higher resolution than the third images of the scene.

As another example and as shown in FIG. 4, the system 200 can separatelyprocess each of multiple, different color layers to convert themultiple, different color layers into modified color layers that eachcorrespond to a different color. For example, the system 200 can processthe red color layer to convert the red color layer into a modified redcolor layer (430A), process the green color layer to convert the greencolor layer into a modified green color layer that is different than themodified red color layer (430B), and process the blue color layer toconvert the blue color layer into a modified blue color layer that isdifferent than the modified red color layer and the modified green colorlayer (430C).

In implementations where first, second, and third images of a scene areextracted, processing the red, green, and blue color layers can includeprocessing the first images of the scene to convert the first images ofthe scene into modified first images of the scene that reflect red colorvalues of the scene at a higher resolution than the first images of thescene, processing the second images of the scene to convert the secondimages of the scene into modified second images of the scene thatreflect green color values of the scene at a higher resolution than thesecond images of the scene, and processing the third images of the sceneto convert the third images of the scene into modified third images ofthe scene that reflect blue color values of the scene at a higherresolution than the third images of the scene.

A number of sub-processing steps can be performed in each of the steps430A, 430B, and 430C. The sub-processing steps can be used to improvethe resolution of each of the modified red, green, and blue color layersas compared to the respective red, green, and blue color layers. Theextracted red, green, and blue color layers can include degradation ofcross-color/luma-chroma crosstalk contamination (e.g., a “rainbow”effect), which can be caused by varying luminance signal frequenciescrossing at a coincident points.

The steps 430A, 430B, and 430C can each include sub-processingoperations that include any combination of blurring, de-interlacing,resizing, and speed-changing. In some implementations, the steps 430A,430B, and 430C can include sharpening and/or chromatic adjustmentsub-processing. The speed changing can be used to change a frame rate ofeach of the red, green, and blue color layers from 29.97 frames persecond to a frame rate of 23.98 frames per second for each of themodified red, green, and blue color layers.

The blurring sub-processing can include frame by frame detection andblurring of channel edges in a respective red, green, or blue colorlayer. The blurring sub-processing can improve resolution included inthe body of an image. The sharpening sub-processing can includeapplication of a sharpening mask to a respective red, green, or bluecolor layer. The sharpening mask can be applied so that edges do notbecome over-sharpened and so that noise in an extracted color layer isnot amplified.

The standard definition television video program can include interlacedvideo. The interlaced video can include images that are split into twoimages. Each half of an image can be stored in a field, and fields canbe interlaced with each other as odd and even fields. Using interlacedvideo can increase the bandwidth of the video. The de-interlacing subprocessing can include processing odd-and-even field based images intosingle frames, including interpolating with motion tracking estimation.In some implementations, each of the red, green, and blue color layersare separately de-interlaced. In some implementations, frames of thestandard definition television video program are de-interlaced intocombined frames, and the red, green, and blue color layers are extractedfrom the combined frames.

As mentioned, the standard definition television video program may havea resolution of 720×486. The resizing sub-processing can resize imagesincluded in each of the modified red, green, and blue color layers tohave a resolution of 1480×1080 (e.g., a resolution associated with HDtelevision programming). For example, pixels included in each of themodified red, green, and blue color layers can be re-sampled on a fieldby field basis to generate a new picture frame that includes 1480 pixelshorizontally by 1080 lines. Such a picture frame can be used for a fulltop to bottom HD mapped picture when displayed on a HD television. There-sampling process can preserve the aspect ratio of an originalstandard definition image.

The system 200 can perform a chromatic adjustment process on each of themodified red, green, and blue color layers (440). A chromatic adjustmentprocess can be performed to compensate for degradation and loss of colorintensity information from analog processes used in recording thestandard definition television video program. A modified red, blue orgreen color layer can be adjusted by a manipulation of a red, green, orblue color space, such as by adding, subtracting or multiplying channelson an isolated basis to restore contrast and colors which had beenreduced by encoding/decoding processes. Chromatic adjustment can beaccomplished by computing equipment with a series of software processeswhich can be under the control of a colorist user who can control asubjective look of an adjusted color layer. Values for chromaticadjustment for each color layer may be stored in a table and the tablemay be referenced to perform the chromatic adjustment of each colorlayer.

Referring again to FIG. 3, the system 200 reassembles the modifiedlayers into a second stream of the video content that has a higherresolution than the first stream of the video content (340). Forinstance, in implementations where first, second and third images of ascene are extracted from the first stream of the video content, thesystem 200 can reassemble the modified first images of the scene, themodified second images of the scene, and the modified third images ofthe scene into the second stream of the video content. As anotherexample, the system 200 can perform a chromatic level adjustment processthat weights, in the second stream of the video content, a first colorlayer included in the modified color layers more heavily than a second,different color layer included in the modified color layers.

As another example and as shown in FIG. 4, the modified red color layer,the modified green color layer, and the modified blue color layer can bereassembled into a modified high definition television video program(450). The modified high definition television video program has a framerate of 23.98 frames per second, has a resolution of 1480×1080 (e.g.,higher than the standard definition television video program), is basedon an RGB colorimetry platform, and is based on a progressive format inwhich a full frame is displayed after another full frame (e.g., incontrast to interlaced video). Although the above description describeda chromatic adjustment process as being performed separately on each ofthe modified red, green, and blue color layers, in some implementations,instead of or in addition to such processing, a chromatic adjustmentprocess can be performed on a combined file which includes a reassemblyof the modified red, green, and blue color layers.

Reassembly processing can include identification of features in each ofthe modified red, green, and blue color layers and determination ofalignment vectors for matching and aligning features identified in onelayer to features identified in the other layers. Feature identificationand alignment can be performed, for example, to correct for the modifiedred, green, and blue layers not being exactly the same size and nothaving exactly the same content at exactly the same positions. Thefeature identification and alignment can correct for shifting offeatures in the respective modified red, green, and blue color layers.Features can include, for example, edges, objects, contours and otheritems. An alignment vector can be determined, for example, by comparingsets of edges identified in each of the modified red, green, and bluelayers. One of the red, green, and blue modified color layers can beused as a reference layer and the other two of the modified red, green,and blue color layers can be aligned to the reference layer.

Referring again to FIG. 3, the system 200 stores, in electronic storage,the second stream of the video content (350). For instance, the system200 can store the second stream of the video content in the data store220. The system 200 also may record the second stream of the videocontent onto a device readable medium, such as a DVD, a Blu-Ray Disc, aHDCAM SR videocassette, a FireWire drive, or other suitable contentmedium, such as in a DPX (Digital Picture Exchange), QuickTime (e.g., a.MOV file), D-5, or LTO (Linear Tape Open) format, to name a fewexamples.

FIG. 5 illustrates example images 510 and 520 that result from two,different conversion processes that increase resolution of an image. Asshown, the image 510 was processed using a traditional upconversionprocess involving real-time processing usually associated withelectronic recursive noise reducers and image enhancement which attemptto process the video fields and frames in real time. The upconversionprocess can be designed to interface with equipment, such as a digitalvideo disc player and/or with a Betacam, Digital Betacam, one-inch, orother digital or analog tape deck, in real-time, and such a design canimpose restrictions on the upconversion process. The upconversionprocess can be designed to “blow up” a lower resolution image. Such aprocess can magnify degradation artifacts from encoding/decodingprocesses used to produce the lower resolution image.

As shown, the image 520 was processed using the extraction, processing,reassembly, and storing processes described for the process 400. Theimage 520, like the image 510, has an increased resolution as comparedto a source image, but the image 520 includes less noise and distortionas compared to the image 510. FIG. 6 illustrates example magnifiedimages 610 and 620 which are magnifications of letter “a” contentincluded in the image 510 and image 520, respectively. The inclusion ofless noise and distortion in the image 620 as compared to the image 610is visually apparent.

FIG. 7 is a schematic diagram of an example of a generic computer system700. The system 700 can be used for the operations described inassociation with the processes 300 and 400, according to someimplementations. The system 700 may be included in the systems 100 and200.

The system 700 includes a processor 710, a memory 720, a storage device730, and an input/output device 740. Each of the components 710, 720,730, and 740 are interconnected using a system bus 750. The processor710 is capable of processing instructions for execution within thesystem 700. In one implementation, the processor 710 is asingle-threaded processor. In another implementation, the processor 710is a multi-threaded processor. The processor 710 is capable ofprocessing instructions stored in the memory 720 or on the storagedevice 730 to display graphical information for a user interface on theinput/output device 740.

The memory 720 stores information within the system 700. In oneimplementation, the memory 720 is a computer-readable medium. In oneimplementation, the memory 720 is a volatile memory unit. In anotherimplementation, the memory 720 is a non-volatile memory unit.

The storage device 730 is capable of providing mass storage for thesystem 700. In one implementation, the storage device 730 is acomputer-readable medium. In various different implementations, thestorage device 730 may be a floppy disk device, a hard disk device, anoptical disk device, or a tape device.

The input/output device 740 provides input/output operations for thesystem 700. In one implementation, the input/output device 740 includesa keyboard and/or pointing device. In another implementation, theinput/output device 740 includes a display unit for displaying graphicaluser interfaces.

The features described can be implemented in digital electroniccircuitry, or in computer hardware, firmware, software, or incombinations of them. The apparatus can be implemented in a computerprogram product tangibly embodied in an information carrier, e.g., in amachine-readable storage device, for execution by a programmableprocessor; and method steps can be performed by a programmable processorexecuting a program of instructions to perform functions of thedescribed implementations by operating on input data and generatingoutput. The described features can be implemented advantageously in oneor more computer programs that are executable on a programmable systemincluding at least one programmable processor coupled to receive dataand instructions from, and to transmit data and instructions to, a datastorage system, at least one input device, and at least one outputdevice. A computer program is a set of instructions that can be used,directly or indirectly, in a computer to perform a certain activity orbring about a certain result. A computer program can be written in anyform of programming language, including compiled or interpretedlanguages, and it can be deployed in any form, including as astand-alone program or as a module, component, subroutine, or other unitsuitable for use in a computing environment.

Suitable processors for the execution of a program of instructionsinclude, by way of example, both general and special purposemicroprocessors, and the sole processor or one of multiple processors ofany kind of computer. Generally, a processor will receive instructionsand data from a read-only memory or a random access memory or both. Theelements of a computer are a processor for executing instructions andone or more memories for storing instructions and data. Generally, acomputer will also include, or be operatively coupled to communicatewith, one or more mass storage devices for storing data files; suchdevices include magnetic disks, such as internal hard disks andremovable disks; magneto-optical disks; and optical disks. Storagedevices suitable for tangibly embodying computer program instructionsand data include all forms of non-volatile memory, including by way ofexample semiconductor memory devices, such as EPROM, EEPROM, and flashmemory devices; magnetic disks such as internal hard disks and removabledisks; magneto-optical disks; and CD-ROM and DVD-ROM disks. Theprocessor and the memory can be supplemented by, or incorporated in,ASICs (application-specific integrated circuits).

To provide for interaction with a user, the features can be implementedon a computer having a display device such as a CRT (cathode ray tube)or LCD (liquid crystal display) monitor for displaying information tothe user and a keyboard and a pointing device such as a mouse or atrackball by which the user can provide input to the computer.

The features can be implemented in a computer system that includes aback-end component, such as a data server, or that includes a middlewarecomponent, such as an application server or an Internet server, or thatincludes a front-end component, such as a client computer having agraphical user interface or an Internet browser, or any combination ofthem. The components of the system can be connected by any form ormedium of digital data communication such as a communication network.Examples of communication networks include, e.g., a LAN, a WAN, and thecomputers and networks forming the Internet.

The computer system can include clients and servers. A client and serverare generally remote from each other and typically interact through anetwork, such as the described one. The relationship of client andserver arises by virtue of computer programs running on the respectivecomputers and having a client-server relationship to each other.

A number of implementations have been described. Nevertheless, it willbe understood that various modifications may be made without departingfrom the spirit and scope of the disclosure. Accordingly, otherimplementations are within the scope of the following claims.

What is claimed is:
 1. A method comprising: accessing, from anelectronic storage, a first stream of video content, the first stream ofthe video content having a first resolution; extracting, from the firststream of the video content, multiple, different color layers that eachcorrespond to a different color and have the first resolution;separately processing and re-sampling each of the multiple, differentcolor layers to convert the multiple, different color layers intomodified layers that each have a second resolution that is higher thanthe first resolution; separately adjusting a chromatic level of each ofthe modified layers; reassembling, by at least one processor, themodified layers into a second stream of the video content, the secondstream of the video content having the second resolution that is higherthan the first resolution; and storing, in an electronic storage, thesecond stream of the video content.
 2. The method of claim 1: whereinextracting, from the first stream of the video content, multiple,different color layers that each have the first resolution comprises:extracting, from the first stream of the video content, a first colorlayer; extracting, from the first stream of the video content, a secondcolor layer that is different than the first color layer; andextracting, from the first stream of the video content, a third colorlayer that is different than the first color layer and the second colorlayer; wherein separately processing each of the multiple, differentcolor layers to convert the multiple, different color layers intomodified layers that each have a second resolution that is higher thanthe first resolution comprises: processing the first color layer toconvert the first color layer into a modified first color layer;processing the second color layer to convert the second color layer intoa modified second color layer that is different than the modified firstcolor layer; and processing the third color layer to convert the thirdcolor layer into a modified third color layer that is different than themodified first color layer and the modified second color layer; andwherein reassembling the modified layers into the second stream of thevideo content comprises reassembling the modified first color layer, themodified second color layer, and the modified third color layer into asecond stream of the video content.
 3. The method of claim 2: whereinextracting, from the first stream of the video content, the first colorlayer comprises extracting, from the first stream of the video content,a red color layer; wherein extracting, from the first stream of thevideo content, the second color layer that is different than the firstcolor layer comprises extracting, from the first stream of the videocontent, a green color layer that is different than the red color layer;wherein extracting, from the first stream of the video content, thethird color layer that is different than the first color layer and thesecond color layer comprises extracting, from the first stream of thevideo content, a blue color layer that is different than the red colorlayer and the green color layer; wherein processing the first colorlayer to convert the first color layer into the modified first colorlayer comprises processing the red color layer to convert the red colorlayer into a modified red color layer; wherein processing the secondcolor layer to convert the second color layer into the modified secondcolor layer that is different than the modified first color layercomprises processing the green color layer to convert the green colorlayer into a modified green color layer that is different than themodified red color layer; wherein processing the third color layer toconvert the third color layer into a modified third color layer that isdifferent than the modified first color layer and the modified secondcolor layer comprises processing the blue color layer to convert theblue color layer into a modified blue color layer that is different thanthe modified red color layer and the modified green color layer; andwherein reassembling the modified first color layer, the modified secondcolor layer, and the modified third color layer into the second streamof the video content comprises reassembling the modified red colorlayer, the modified green color layer, and the modified blue color layerinto the second stream of the video content.
 4. The method of claim 3:wherein extracting, from the first stream of the video content, the redcolor layer comprises identifying red color values in the first streamof the video content and separating the identified red color values intothe red color layer; wherein extracting, from the first stream of thevideo content, the green color layer comprises identifying green colorvalues in the first stream of the video content and separating theidentified green color values into the green color layer; and whereinextracting, from the first stream of the video content, the blue colorlayer comprises identifying blue color values in the first stream of thevideo content and separating the identified blue color values into theblue color layer.
 5. The method of claim 3: wherein extracting, from thefirst stream of the video content, the red color layer comprisesextracting, from the first stream of the video content, first images ofa scene that reflect red color values of the scene; wherein extracting,from the first stream of the video content, the green color layer thatis different than the red color layer comprises extracting, from thefirst stream of the video content, second images of the scene thatreflect green color values of the scene; wherein extracting, from thefirst stream of the video content, the blue color layer that isdifferent than the red color layer and the green color layer comprisesextracting, from the first stream of the video content, third images ofthe scene that reflect blue color values of the scene; whereinprocessing the red color layer to convert the red color layer into themodified red color layer comprises processing the first images of thescene to convert the first images of the scene into modified firstimages of the scene that reflect red color values of the scene at ahigher resolution than the first images of the scene; wherein processingthe green color layer to convert the green color layer into the modifiedgreen color layer that is different than the modified red color layercomprises processing the second images of the scene to convert thesecond images of the scene into modified second images of the scene thatreflect green color values of the scene at a higher resolution than thesecond images of the scene; wherein processing the blue color layer toconvert the blue color layer into the modified blue color layer that isdifferent than the modified red color layer and the modified green colorlayer comprises processing the third images of the scene to convert thethird images of the scene into modified third images of the scene thatreflect blue color values of the scene at a higher resolution than thethird images of the scene; and wherein reassembling the modified redcolor layer, the modified green color layer, and the modified blue colorlayer into the second stream of the video content comprises reassemblingthe modified first images of the scene, the modified second images ofthe scene, and the modified third images of the scene into the secondstream of the video content.
 6. The method of claim 1: wherein accessingthe first stream of video content comprises accessing a first stream ofvideo content with a 29.97 frame rate and 525 lines of resolution, thefirst stream of video content being based on a red, green, and bluecolorimetry platform; wherein extracting, from the first stream of thevideo content, multiple, different color layers that each correspond toa different color and have the first resolution comprises extracting,from the first stream of the video content, red, green, and blue layersthat each have a 29.97 frame rate and 525 lines of resolution; whereinseparately processing and re-sampling each of the multiple, differentcolor layers to convert the multiple, different color layers intomodified layers that each have a second resolution that is higher thanthe first resolution comprises separately processing each of the red,green, and blue layers to convert the red, green, and blue layers intomodified red, green, and blue layers that each have a 23.98 frame rateand 1080 lines of resolution; wherein separately adjusting the chromaticlevel of each of the modified layers comprises separately adjusting achromatic level of each of the modified red, green, and blue layers thateach have a 23.98 frame rate and 1080 lines of resolution; and whereinreassembling the modified layers into the second stream of the videocontent comprises reassembling the modified red, green, and blue layersinto a second stream of the video content with a 23.98 frame rate and1080 lines of resolution.
 7. A video conversion system comprising: atleast one processor; and at least one memory coupled to the at least oneprocessor having stored thereon instructions which, when executed by theat least one processor, causes the at least one processor to performoperations comprising: accessing, from an electronic storage, a firststream of video content, the first stream of the video content having afirst resolution; extracting, from the first stream of the videocontent, multiple, different color layers that each correspond to adifferent color and have the first resolution; separately processing andre-sampling each of the multiple, different color layers to convert themultiple, different color layers into modified layers that each have asecond resolution that is higher than the first resolution; separatelyadjusting a chromatic level of each of the modified layers;reassembling, by at least one processor, the modified layers into asecond stream of the video content, the second stream of the videocontent having the second resolution that is higher than the firstresolution; and storing, in an electronic storage, the second stream ofthe video content.
 8. At least one computer-readable storage mediumencoded with executable instructions that, when executed by at least oneprocessor, cause the at least one processor to perform operationscomprising: accessing, from an electronic storage, a first stream ofvideo content, the first stream of the video content having a firstresolution; extracting, from the first stream of the video content,multiple, different color layers that each correspond to a differentcolor and have the first resolution; separately processing andre-sampling each of the multiple, different color layers to convert themultiple, different color layers into modified layers that each have asecond resolution that is higher than the first resolution; separatelyadjusting a chromatic level of each of the modified layers;reassembling, by at least one processor, the modified layers into asecond stream of the video content, the second stream of the videocontent having the second resolution that is higher than the firstresolution; and storing, in an electronic storage, the second stream ofthe video content.
 9. The method of claim 1: wherein the video contentcomprises video content originally captured and stored on a firstelectronic storage of a first type from which the first stream of videocontent is accessed; wherein the second stream of the video content isstored in a second electronic storage of a second, different type. 10.The method of claim 1: wherein reassembling the modified layers into asecond stream of the video content, the second stream of the videocontent having the second resolution that is higher than the firstresolution, comprises identifying at least one feature in each of themodified layers, and aligning the at least one feature of each modifiedlayer with at least one feature of each other modified layer,respectively.
 11. The method of claim 1: wherein the first stream ofvideo content having the first resolution comprises visual distortionoccupying a first percentage of units of the first resolution; andwherein the second stream of video content having the second resolutioncomprises visual distortion occupying a second percentage of units ofthe second resolution, the second percentage being less than the firstpercentage.
 12. The method of claim 1: wherein storing the second streamof the video content comprises recording the second stream of the videocontent onto an electronic storage.